﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SmartConference.Domain
{
    [Table("MeetingApprove")]
    public class MeetingApprove
    {
        [Key]
        public int MeetApprovalId { get; set; }
        /// <summary>
        /// 预约
        /// </summary>
        public int MeetingReservationId { get; set; }
        /// <summary>
        /// 会议室名称
        /// </summary>
        [Required]
        [MaxLength(255)]
        public string RoomName { get; set; } = string.Empty;
        /// <summary>
        /// 会议主题
        /// </summary>
        public string MeetingTheme { get; set; } = string.Empty;
        /// <summary>
        /// 主持人
        /// </summary>
        public string Compere { get; set; } = string.Empty;
        /// <summary>
        /// 提交时间
        /// </summary>
        public string MeetingTime { get; set; } = string.Empty;
        /// <summary>
        /// 会议开始时间
        /// </summary>
        public string BeginTime { get; set; } = string.Empty;
        /// <summary>
        /// 会议结束时间
        /// </summary>
        public string EndTime { get; set; } = string.Empty;
        /// <summary>
        ///  参会人数
        /// </summary>
        public int? Attendance { get; set; }
        /// <summary>
        /// 会议内容
        /// </summary>
        public string MeetingContent { get; set; } = string.Empty;
        /// <summary>
        /// 提交时间
        /// </summary>
        public DateTime SubmissionTime { get; set; }
        /// <summary>
        /// 审批结果
        /// </summary>
        public ApprovalResult Result { get; set; }
        /// <summary>
        /// 审批说明
        /// </summary>
        public string ApprovalNotes { get; set; } = string.Empty;
        /// <summary>
        /// 状态
        /// </summary>
        public ApprovalState Status { get; set; }
    }

    public enum ApprovalState
    {
        待审批 = 0,
        已审批 = 1,
    }

    public enum ApprovalResult
    {
        待审批 = 0,
        通过 = 1,
        退回 = 2,
    }
}
